#ifndef _CFILEDATA_H_
#define _CFILEDATA_H_

class CFileData;

class CFileData
{
public:
	CFileData();
	CFileData(const CXMLNode &pNode);
	virtual ~CFileData();
	
	void Read(COldBuolaStream *pStream);
	void Write(COldBuolaStream *pStream);

public:
	void GetValue(const std::string &pKey,UValue &pValue);
	void SetValue(const std::string &pKey,const UValue &pValue);
	void GetAllValues(dbus::CReply*,const std::string &pKey);
	void GetPairs(dbus::CReply*,const std::string &pName);
	void GetAllPairs(dbus::CReply*);

private:
	CXMLNode *mNode;

	std::unordered_map<std::string,UValue> mData;
};

#endif
